package com.synergy.stockflow.product.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import java.util.Date;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Schema
@Data
@AllArgsConstructor
@NoArgsConstructor
@TableName(value = "workstation")
public class Workstation {
    /**
     * 工作站ID
     */
    @TableId(value = "workstation_id", type = IdType.INPUT)
    @Schema(description="工作站ID")
    private String workstationId;

    /**
     * 工作站名称
     */
    @TableField(value = "workstation_name")
    @Schema(description="工作站名称")
    private String workstationName;

    /**
     * 工作站地点
     */
    @TableField(value = "workstation_location")
    @Schema(description="工作站地点")
    private String workstationLocation;

    /**
     * 所在车间
     */
    @TableField(value = "workshop_id")
    @Schema(description="所在车间")
    private String workshopId;

    /**
     * 所属工序
     */
    @TableField(value = "process_id")
    @Schema(description="所属工序")
    private String processId;

    /**
     * 是否启用（0是1否）
     */
    @TableField(value = "is_enabled")
    @Schema(description="是否启用（0是1否）")
    private Integer isEnabled;

    /**
     * 备注
     */
    @TableField(value = "remark")
    @Schema(description="备注")
    private String remark;

    @TableField(value = "create_time")
    @Schema(description="")
    private Date createTime;

    @TableField(value = "create_by")
    @Schema(description="")
    private String createBy;

    @TableField(value = "update_time")
    @Schema(description="")
    private Date updateTime;

    @TableField(value = "update_by")
    @Schema(description="")
    private String updateBy;

    @TableField(exist = false)
    @Schema(description="备注")
    private Workshop workshop;

    @TableField(exist = false)
    @Schema(description="备注")
    private ProcessStep processStep;
}